package org.truenewx.tnxjee.service.reminder.model;

/**
 * 提醒描述
 */
public class ReminderDescriptor {

    private final ReminderType type;
    private final String key;
    private final String code;
    private final Object[] args;
    /**
     * 停留秒数
     */
    private Integer seconds;

    public ReminderDescriptor(ReminderType type, String key, String code, Object... args) {
        this.type = type == null ? ReminderType.INFO : type;
        this.key = key;
        this.code = code;
        this.args = args;
    }

    public ReminderDescriptor(ReminderType type, String code, Object... args) {
        this(type, null, code, args);
    }

    public ReminderDescriptor(String key, String code, Object... args) {
        this(null, key, code, args);
    }

    public ReminderDescriptor(String code, Object... args) {
        this(null, null, code, args);
    }

    public ReminderType getType() {
        return this.type;
    }

    public String getKey() {
        return this.key;
    }

    public String getCode() {
        return this.code;
    }

    public Object[] getArgs() {
        return this.args;
    }

    public Integer getSeconds() {
        return this.seconds;
    }

    public void setSeconds(Integer seconds) {
        this.seconds = seconds;
    }

}
